跳到主要内容

Fortran 函数作为参数传递给其他过程

如果指定函数作为实参,则传递指向函数的指针。例如

call evaluate(fun1, x, y, output)
subroutine evaluate(fun, x, y, output)
output = fun(x) * y
end subroutine

注意,此时必须将用户定义函数两次声明为外部。

program test
real, external :: fun1, fun2
subroutine evaluate
real, external :: fun